#!/usr/bin/env node

const fs = require('fs'),           
      file = process.argv[2],
      log = console.log;

//判断命令行格式
if(process.argv.length !==3){
  console.error('命令行参数的正确格式为：cmd file_name');
  process.exit(1);
}

let buffer;
//判断命令行参数的图片文件是否存在
try{
  buffer = fs.readFileSync(file);
} catch (e) {
  console.error(e.message);
  process.exit(2);
}

if(buffer.toString('ascii', 0, 2) === 'BM'){
  log('width:\n',buffer.readInt32LE(0x12));   //0x表示十六进制
  log('height:\n',buffer.readInt32LE(0x16));  
  log('color:\n',buffer.readInt16LE(0x1c));   
  //从该 Buffer 指定的带有特定尾数格式（readInt32BE() 返回一个较大的尾数，readInt32LE() 返回一个较小的尾数）的 offset 位置开始读取一个有符号的32位整数值。
}
